home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Rectangle;
- import java.io.DataInputStream;
-
- public class CClearAction extends CDisplayAction {
- static final int FILL_WINDOW = 1;
- static final int TRANSITION_EFFECT_ONLY = 4;
- protected int m_nFlags;
- protected String m_strObjects;
- protected CByteArray m_byarrLayers = new CByteArray();
-
- boolean LoadFromFile(DataInputStream var1) {
- this.m_nFlags = FileLoad.ReadCPlusInt(var1);
- this.m_strObjects = FileLoad.ReadCString(var1);
- this.m_byarrLayers.LoadFromFile(var1);
- return super.LoadFromFile(var1);
- }
-
- public CClearAction() {
- super(42);
- ((CDisplayAction)this).SetZOrder((short)2);
- }
-
- boolean DoAction() {
- CRect var1 = new CRect();
- if ((this.m_nFlags & 1) != 0) {
- if ((this.m_nFlags & 4) == 0) {
- Globals.thePresView.RemoveAllDrawObjects((CCourse)null, false);
- }
-
- var1.reshape(Globals.thePresView.GetClientRect());
- } else {
- new CRect();
- if (!((CDisplayAction)this).GetActualRect().isEmpty()) {
- if ((this.m_nFlags & 4) == 0) {
- Globals.thePresView.CanRemoveDrawObjects(((CDisplayAction)this).GetActualRect(), (CAction)this);
- }
-
- var1.reshape(((CDisplayAction)this).GetActualRect());
- }
-
- for(byte var3 = 0; var3 < this.m_byarrLayers.GetSize(); ++var3) {
- if (this.m_byarrLayers.GetAt(var3) != 0) {
- CRect var2 = Globals.thePresView.RemoveDrawObject(var3, (this.m_nFlags & 4) != 0);
- if (!((Rectangle)var2).isEmpty()) {
- if (((Rectangle)var1).isEmpty()) {
- var1.reshape(var2);
- } else {
- var1 = var1.union(var2);
- }
- }
- }
- }
-
- if (this.m_strObjects.length() > 0) {
- int var7 = 0;
-
- String var4;
- for(String var5 = Utils.InsertVariablesInString(this.m_strObjects); (var4 = Utils.GetLine(var5, var7)) != null; ++var7) {
- CRect var6 = Globals.thePresView.RemoveDrawObject(var4, (this.m_nFlags & 4) != 0);
- if (!((Rectangle)var6).isEmpty()) {
- if (((Rectangle)var1).isEmpty()) {
- var1.reshape(var6);
- } else {
- var1 = var1.union(var6);
- }
- }
- }
- }
- }
-
- if (super.m_Effect.HasValidClearEffect() && !((Rectangle)var1).isEmpty()) {
- Globals.thePresView.RenderAndDrawWithEffect(this, var1);
- }
-
- return true;
- }
- }
-